<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>The rEFInd Boot Manager: rEFInd and Yosemite</title>
  <link href="../Styles/styles.css" rel="stylesheet" type="text/css" />
</head>

<meta name="viewport" content="width=device-width, initial-scale=1">

<body>
  <h1>The rEFInd Boot Manager:<br />rEFInd and Yosemite</h1>

<p class="subhead">by Roderick W. Smith, <a
href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>

<p>Originally written: 10/20/2014; last Web page update:
12/8/2014, referencing rEFInd 0.8.4</p>


<p>This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!</p>

<table border="1">
<tr>
<td>Donate $1.00</td>
<td>Donate $2.50</td>
<td>Donate $5.00</td>
<td>Donate $10.00</td>
<td>Donate $20.00</td>
<td>Donate another value</td>
</tr>
<tr>

<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="amount" value="1.00">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td>

<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="amount" value="2.50">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td>


<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="amount" value="5.00">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td>

<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="amount" value="10.00">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td>

<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="amount" value="20.00">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td>

<td>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_donations">
<input type="hidden" name="business" value="rodsmith@rodsbooks.com">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="item_name" value="rEFInd Boot Manager">
<input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
<input type="image" src="donate.png" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
</form>
</td></tr>
</table>

<hr />

<p><b>This page is largely obsolete, as of rEFInd 0.8.4. This version of rEFInd makes changes to both its <tt>install.sh</tt> script and default options to make rEFInd better able to cope with OS X 10.10 without the changes to procedure described herein. I'm leaving this page in place for the benefit of those who might be running earlier versions of rEFInd with Yosemite, as well as for general educational purposes. Most readers can skip it.</b></p>

<hr />

<p>This page is part of the documentation for the rEFInd boot manager. If a Web search has brought you here, you may want to start at the <a href="index.html">main page.</a></p>

<hr />

<p>Recently, Apple released OS X 10.10 (aka <i>Yosemite</i>), and I've been getting e-mails with problem reports. Unfortunately, my only Mac is an ancient 32-bit model that can't run the latest version, so I can't investigate the cause of the problems myself; however, I think I understand most of what's going on. There are two main problems.</p>

<p>First, Yosemite now uses a type of <a href="http://en.wikipedia.org/wiki/Logical_volume_management">logical volume management (LVM).</a> The EFI built into the computer can't read from LVM, so an installation of rEFInd on the OS X root (<tt>/</tt>) partition, which is the default when you install rEFInd 0.8.3 and earlier using <tt>install.sh</tt>, is rendered useless.</p>

<p>Second, Apple seems to be placing its <i>standard</i> boot loader for this type of configuration on the <tt>Recovery HD</tt> volume, which had previously been used for (as the name suggests) recovery tools (and also for the regular boot loader when the main partition was encrypted). Because I'd gotten many complaints about the recovery system showing up in the main menu list, I coded rEFInd to ignore the contents of this volume by default. Thus, fixing the first problem results in rEFInd working but not detecting the Yosemite installation. Thanks, Apple, for making it to distinguish between your recovery boot loader and your regular boot loader!</p>

<p>Version 0.8.4 of rEFInd changes both <tt>install.sh</tt> and the rEFInd defaults to bypass these problems. Thus, rEFInd 0.8.4 <i>should</i> work fine when installed from OS X 10.10 using <tt>install.sh</tt> and its default options. If you continue to have problems or if you want to use Yosemite with an earlier version of rEFInd, you can fix the problems manually:</p>

<ol>

<li>Boot to OS X, using whatever means are available to you. Holding Option (or Alt) while powering up will normally give you Apple's own boot manager, which should enable you to boot to OS X. If your rEFInd installation is currently starting but is not showing an OS X option, skip to step #7; but if rEFInd isn't starting, follow steps #2&ndash;7.</li>

<li>If you've made changes to <tt>/EFI/refind/refind.conf</tt>, back it up.</li>

<li>Remove the <tt>/EFI/refind</tt> directory tree; it's useless now, and its presence may cause confusion.</li>

<li>Re-install rEFInd, as described in the <a href="installing.html">Installing rEFInd page;</a> but if you install version 0.8.3 or earlier, be sure to use the <tt>--esp</tt> or <tt>--ownhfs <tt class="variable">device-file</tt></tt> option. The latter is preferable, but requires either a dedicated partition for rEFInd or an HFS+ data partition that is currently <i>not</i> bootable. If you install rEFInd 0.8.4 or later, there's no need to specify <tt>--esp</tt> (as that is effectively now the default). You may use <tt>--ownhfs <tt class="variable">device-file</tt></tt>, if you like.</li>

<li>Ensure that the partition to which you've installed rEFInd is mounted. The details depend on how you installed it:</li>

<ul>

<li>If you installed rEFInd to your ESP, typing <tt class="userinput">mkdir /Volumes/esp</tt> followed by <tt class="userinput">sudo mount -t msdos /dev/disk0s1 /Volumes/esp</tt> will probably work, although in some cases your ESP won't be <tt>/dev/disk0s1</tt>, so you may need to change this detail. </li>

<li>If you used the <tt>--ownhfs <tt class="variable">device-file</tt></tt> installation option, the target partition should already be mounted, normally somewhere under <tt>/Volume</tt>. If not, locate it and mount it with Disk Utility or <tt>mount</tt>.</li>

</ul>

<li>If you backed up your <tt>refind.conf</tt> file, you can copy it over your new <tt>refind.conf</tt> file. You should copy the file to either <tt>/Volumes/esp/EFI/refind/</tt> (if you mounted the ESP at <tt>/Volumes/esp</tt> and installed there) or to <tt>/Volumes/<tt class="variable">Mountpoint</tt>/System/Library/CoreServices/</tt> (if you used a dedicated HFS+ volume; note that <tt class="variable">Mountpoint</tt> will be the name of the volume).</li>

<li>Edit your new <tt>refind.conf</tt> file, which should be located as described in the previous step. In your favorite editor, locate the <tt>dont_scan_volumes</tt> line, which is commented out with a <tt>#</tt> symbol at the start of the line by default. Uncomment this line and <i>remove</i> the <tt>"Recovery HD"</tt> item from the line. Some users report that they need to enter one or two dummy entries, as in <tt>dont_scan_volumes foo,bar</tt>, to get it to work.</li>

</ol>

<p>With these changes made, you should be able to reboot into rEFInd and see entries for both OS X and whatever other OSes you've installed. It's possible that you'll see two entries for OS X, though, one of which will boot to a recovery system and one of which will boot to the regular installation. If you can identify a difference in their descriptions, you may be able to use the <tt>dont_scan_volumes</tt>, <tt>dont_scan_dirs</tt>, or <tt>dont_scan_files</tt> options in <tt>refind.conf</tt> to remove the recovery option from the main list. (You should still see a recovery entry as a second-line option.)</p>

<p>An entirely different approach to fixing this problem is to force Yosemite to install <i>without</i> using LVM. I don't have a specific procedure for doing this, though; you should do a Web search or ask on a Mac-specific Web forum.</p>

<hr />

<p>copyright &copy; 2014 by Roderick W. Smith</p>

<p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>

<p>If you have problems with or comments about this Web page, please e-mail me at <a href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com.</a> Thanks.</p>

<p><a href="index.html">Go to the main rEFInd page</a></p>

<p><a href="sip.html">rEFInd and System Integrity Protection</a></p>

  <p><a href="https://www.rodsbooks.com/">Return</a> to my main Web page.</p>
</body>
</html>
